package com.xbongbong.paas.service;

import com.xbongbong.paas.toolbox.exception.XbbException;
import com.xbongbong.pro.formteamset.dto.FormTeamSetDetailDTO;
import com.xbongbong.pro.formteamset.dto.FormTeamSetLinkFormEnableDTO;
import com.xbongbong.pro.formteamset.dto.FormTeamSetLinkFormListDTO;
import com.xbongbong.pro.formteamset.dto.FormTeamSetSaveDTO;
import com.xbongbong.pro.formteamset.vo.FormTeamSetDetailVO;
import com.xbongbong.pro.formteamset.vo.FormTeamSetLinkFormEnableVO;
import com.xbongbong.pro.formteamset.vo.FormTeamSetLinkFormListVO;
import com.xbongbong.pro.formteamset.vo.FormTeamSetSaveVO;

/**
 *
 * @author 魏荣杰
 *
 */
public interface FormTeamSetService {

    /**
     * Description: 团队成员表单设置
     * @param formTeamSetDetailDTO
     * @return com.xbongbong.pro.formteamset.vo.FormTeamSetDetailVO
     * @throws
     * @author 魏荣杰
     * @date 2021/12/30 11:24
     * @since
     */
    FormTeamSetDetailVO detail(FormTeamSetDetailDTO formTeamSetDetailDTO) throws XbbException;

    /**
     * Description: 团队成员表单设置保存
     * @param formTeamSetSaveDTO
     * @return com.xbongbong.pro.formteamset.vo.FormTeamSetSaveVO
     * @throws
     * @author 魏荣杰
     * @date 2021/12/30 11:24
     * @since
     */
    FormTeamSetSaveVO save(FormTeamSetSaveDTO formTeamSetSaveDTO) throws XbbException;

    /**
     * Description: 获取关联列表数据
     * @param formTeamSetLinkFormListDTO
     * @return com.xbongbong.pro.formteamset.vo.FormTeamSetLinkFormListVO
     * @throws
     * @author 魏荣杰
     * @date 2021/12/30 11:25
     * @since
     */
    FormTeamSetLinkFormListVO linkFormList(FormTeamSetLinkFormListDTO formTeamSetLinkFormListDTO) throws XbbException;


    /**
     *
     * @Description: 团队成员设置页，切换隔离/共享模式，判断link列表是否展示
     * @param formTeamSetLinkFormEnableDTO
     * @return: com.xbongbong.pro.formteamset.vo.FormTeamSetLinkFormEnableVO
     * @Author: shen.yang
     * @Date: 2022/5/12  10:51
    */
    FormTeamSetLinkFormEnableVO linkFormEnable(FormTeamSetLinkFormEnableDTO formTeamSetLinkFormEnableDTO) throws XbbException;
}
